package lib1

//init的调用是递归过程，最底层最先调用
//导了包就必须使用，如果只想调用init，则要匿名导包
import (
	"fmt"
	"learn_go/test4_init/lib2"
	_ "learn_go/test4_init/lib3"//匿名导包
	//mylib3 "learn_go/test4_init/lib3"//别名导包
	//. "learn_go/test4_init/lib3"//包内所有函数都可以直接使用
)

var s string

func init() {
	fmt.Println("lib1 init")
	s = "lib1"
}

// 大写表示对外开放，可以被包外调用，否则只能被包内调用
func Lib1() {
	fmt.Println(s)
	lib2.Lib2()
}
